﻿using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Linq;
using System.Text;

namespace VitCode.ObjectResolutionHelper
{
    /// <summary>
    /// 历史对象解析时需要用到的设置文件当中的自定义标记
    /// 标记的含义会在XML示例文件中进行注释
    /// </summary>
    public class HistoryKeyInfo
    {
        public const string LAST_STRING = "Record", H_ID = "HId", CURR_HIS_ID = "CurrHisId", HIS_VERSION_INFO="HisVersionInfo",ID="Id",
             BASE_HISTORY_ENTITY = "BaseHistoryEntity", MONITOR_OBJECTS="MonitorObjects";

        public const char PRO_FG = '_';

        public const string CREATE_HIS_RECORD = "CreateHisRecord";
        public const string HIS_OBJ_LAST_NAME = "Record";
        public const string H_BASE_OBJECT_ID = "HBaseObjectId";
        public const string H_PARENT_ID = "HParentId";
        public const string H_IS_LAST = "HIsLast";
        public const string H_MEMO = "HMemo";
        public const string H_VERSION_ID = "HVersionId";
        public const string GET_HISTORY_OBJECT_TYPE = "GetHistoryObjectType";

        
        /// <summary>
        /// 不需要进行差异比对的类属性
        /// </summary>
        public static StringCollection WithOutClassNames
        {
            get { return new StringCollection {BASE_HISTORY_ENTITY, MONITOR_OBJECTS}; }
        }
    }
}
